<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/BlueCurve.SearchContract" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/BlueCurve.SearchContract" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:7890/QuerySearch?xsd=xsd3" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:import schemaLocation="http://localhost:7890/QuerySearch?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:complexType name="SearchQuery">
    <xs:sequence>
      <xs:element minOccurs="0" name="MaxResponsePerPage" type="xs:int" />
      <xs:element minOccurs="0" name="NeedPageIndex" type="xs:int" />
      <xs:element minOccurs="0" name="Query" nillable="true" type="xs:string" />
      <xs:element xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="QueryFilter" nillable="true" type="q1:ArrayOfKeyValueOfstringKeyValuePairOfstringBooleanClauseQtJkjtfMtwCi8m_S7" />
      <xs:element minOccurs="0" name="SafeSearch" type="xs:boolean" />
      <xs:element minOccurs="0" name="TypeOfQuery" type="tns:TypeOfRequest" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SearchQuery" nillable="true" type="tns:SearchQuery" />
  <xs:simpleType name="BooleanClause">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Must">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Must_Not">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Should">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">3</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="BooleanClause" nillable="true" type="tns:BooleanClause" />
  <xs:simpleType name="TypeOfRequest">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Simple">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Advanced">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TypeOfRequest" nillable="true" type="tns:TypeOfRequest" />
  <xs:complexType name="ArrayOfSearchData">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SearchData" nillable="true" type="tns:SearchData" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSearchData" nillable="true" type="tns:ArrayOfSearchData" />
  <xs:complexType name="SearchData">
    <xs:sequence>
      <xs:element minOccurs="0" name="Cache" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CreationDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Date" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Domain" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IndexValue" type="xs:float" />
      <xs:element minOccurs="0" name="Indexid" type="xs:int" />
      <xs:element minOccurs="0" name="IsDeskTop" type="xs:boolean" />
      <xs:element minOccurs="0" name="Language" nillable="true" type="xs:string" />
      <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="Rss" nillable="true" type="q2:ArrayOfstring" />
      <xs:element minOccurs="0" name="Size" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Thumbnail" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Type" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Url" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SearchData" nillable="true" type="tns:SearchData" />
  <xs:complexType name="UpdateMetaData">
    <xs:sequence>
      <xs:element minOccurs="0" name="CreationDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="IsDesktop" type="xs:boolean" />
      <xs:element minOccurs="0" name="LastModified" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="UpdateMetaData" nillable="true" type="tns:UpdateMetaData" />
</xs:schema>